﻿using System;
using System.Collections.Generic;
using System.Diagnostics;
using csvmb.contracts.infrastructure;
using csvmb.csvadapter.contracts;

namespace csvmb.csvadapter {
    public class Datenzeilen_ab_Position_lesen : IDatenzeilen_ab_Position_lesen, IDependsOn<IDateiadapter> {
        public void Process(Tuple<long, int> message) {
            Trace.TraceInformation("Datenzeilen_ab_Position_lesen.Process aufgerufen mit {0} und {1}", message.Item1, message.Item2);

            Result(m_Dateiadapter.Datenzeilen_ab_Position_lesen(message.Item1, message.Item2));
        }

        public event Action<IEnumerable<string>> Result;

        private IDateiadapter m_Dateiadapter;
        public void Inject(IDateiadapter independent) {
            Trace.TraceInformation("Datenzeilen_ab_Position_lesen.Inject aufgerufen mit {0}", independent );

            m_Dateiadapter = independent;
        }
    }
}
